/*
 * Propiedad de Fernando Lorenta
 * Ejercicios Java PCarrier
 */

package cargarTablaEjerBoletin;

import javax.swing.JTextArea;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import objetos.ObjetoEjercicio;
import ventanaPrincipal.VentanaPrincipal;
import ventanaPrincipal.VentanaPrincipalWindow;

/**
 *
 * @author fernan
 */
public class CargarTablaEjerBoletin implements ListSelectionListener{

    private VentanaPrincipalWindow ventanaPrincipalWindow;
    private VentanaPrincipal ventanaPrincipal;
    private int boletinCargar;
    private CargarTablaEjerBoletinWindow cargarTablaEjerBoletinWindow;
    private JTextArea descripcionJTA;
    
    public CargarTablaEjerBoletin() {
        
    }//public CargarTablaEjerBoletin()
    
    public CargarTablaEjerBoletin(VentanaPrincipalWindow ventanaPrincipalWindow, VentanaPrincipal ventanaPrincipal, CargarTablaEjerBoletinWindow cargarTablaEjerBoletinWindow) {
     
        this.ventanaPrincipalWindow = ventanaPrincipalWindow;
        this.ventanaPrincipal = ventanaPrincipal;
        this.cargarTablaEjerBoletinWindow = cargarTablaEjerBoletinWindow;
        
        //if (ventanaPrincipalWindow != null) {
            descripcionJTA = ventanaPrincipalWindow.getDescripcionJTA();
        //}
        
        boletinCargar = Integer.parseInt((ventanaPrincipalWindow.getBoletinJCBX().getSelectedItem().toString()).substring(0, 3));
         
        for (Object obj: ventanaPrincipal.getContenedorEjerjcicios()) {

            if (((ObjetoEjercicio)obj).getBoletin() == boletinCargar) {

                Object [] objAux = new Object[cargarTablaEjerBoletinWindow.getCabeceras().length];

                objAux[0] = ((ObjetoEjercicio)obj).getCodigo();
                objAux[1] = ((ObjetoEjercicio)obj).getNombrePaqueteClase();
                objAux[2] = ((ObjetoEjercicio)obj).getNombre();
                objAux[3] = ((ObjetoEjercicio)obj).getBoletin();
                objAux[4] = ((ObjetoEjercicio)obj).getDescripcion();

                cargarTablaEjerBoletinWindow.getModeloTabla().addRow(objAux);
            }

        }               
    }//public CargarTablaEjerBoletin(VentanaPrincipalWindow ventanaPrincipalWindow, VentanaPrincipal ventanaPrincipal, CargarTablaEjerBoletinWindow cargarTablaEjerBoletinWindow)
    
//    public CargarTablaEjerBoletin(VentanaPrincipal ventanaPrincipal, CargarTablaEjerBoletinWindow cargarTablaEjerBoletinWindow) {
//        this(null, ventanaPrincipal, cargarTablaEjerBoletinWindow);
//    }//public CargarTablaEjerBoletin(VentanaPrincipal ventanaPrincipal, CargarTablaEjerBoletinWindow cargarTablaEjerBoletinWindow) 
    
    @Override
    public void valueChanged(ListSelectionEvent e) {
        
        //Cargo en descripcionJTA el valor que hay en la tabla, en la fila seleccionada
        //y en la columna 3, que es la de descripcion (está oculta)
        if (ventanaPrincipalWindow.getTablaEjercicios().getSelectedRow() != -1) {
            descripcionJTA.setText(ventanaPrincipalWindow.getTablaEjercicios().getValueAt(ventanaPrincipalWindow.getTablaEjercicios().getSelectedRow(), 2).toString() + " (" + ventanaPrincipalWindow.getTablaEjercicios().getValueAt(ventanaPrincipalWindow.getTablaEjercicios().getSelectedRow(), 3).toString()+ ")\n" + "\n" + ventanaPrincipalWindow.getTablaEjercicios().getValueAt(ventanaPrincipalWindow.getTablaEjercicios().getSelectedRow(), 4).toString());
        }
    }
    
}
